import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import { styleType } from 'element-plus/es/components/table-v2/src/common'
//ES6导入 适用于vite 3.0以上版本
import path from "path"


// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(),
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),
  ],
  resolve: {
    // 配置路径别名
    alias: {
      '@': path.resolve(__dirname, './src'),
    },
  },
  // vite 官方解决axios跨域问题
  //代理跨域 vite官方文档 给出的跨域问题将解决 
  //跨域问题解决方案 JSON  CROS 代理
  server: {
    proxy: {
      '/api': {
        target: 'http://localhost:8080',
        changeOrigin: true,
        // secure: true, // target是否https接口
        // ws: true, // target是否代理websockets
        rewrite: (path) => path.replace(/^\/api/, '') //路径重写
        // pathRewrite:{
        //   '^/api':'' //重写api，把api变成空字符，因为我们真正请求的路径是没有api的
        // }
      }
  },
  
  hmr: true // 启用 HMR+
},
})

/* module.exports = {
  devServer:{
    proxy:{
      '/api':{//表示拦截以/api开头的请求路径
        target:'http://localhost:8080',
        changOrigin: true,//是否开启跨域
        pathRewrite:{
          '^/api':'' //重写api，把api变成空字符，因为我们真正请求的路径是没有api的
        }
      }
    }
  }
}
 */